package com.yinwq.shorturl.mapper;


import com.yinwq.shorturl.entity.ShortRecord;

import java.util.List;

/**
 * description : T_SHORT_RECORD table dao layer interface <br/>
 * time:    2019-10-28 11:46:37 <br/>
 * @author  TODO <br/>
 * @since   1.0 <br/>
 * @version 1.0 <br/>
 */
public interface ShortRecordMapper {

	/**
     * 新增数据 <br>
     * @param shortRecord 传入参数  <br>
     * @return 新增的数据条数
     */
	int insertShortRecord(ShortRecord shortRecord);

	/**
     * 根据主键删除数据 <br>
     * @param id 主键  <br>
     * @return 删除的数据条数
     */
    int deleteShortRecordByPrimaryKey(Long id);

	/**
     * 根据传入参数删除数据 <br>
     * @param shortRecord 传入参数  <br>
     * @return 删除的数据条数
     */
    int deleteShortRecordByWhere(ShortRecord shortRecord);

	/**
     * 根据主键更新数据 <br>
     * @param shortRecord 传入参数  <br>
     * @return 更新的数据条数
     */
    int updateShortRecordByPrimaryKey(ShortRecord shortRecord);


	/**
     * 根据主键查询数据 <br>
     * @param id 主键  <br>
     * @return ShortRecord 数据对象
     */
    ShortRecord queryShortRecordByPrimaryKey(Long id);

	/**
     * 根据传入参数查询数据列表 <br>
     * @param shortRecord 传入参数  <br>
     * @return 符合条件的数据集合
     */
    List<ShortRecord> queryShortRecordListByWhere(ShortRecord shortRecord);

	/**
     * 统计符合条件的数据数量 <br>
     * @param shortRecord 传入参数  <br>
     * @return 符合条件的数据总数
     */
    int countShortRecordByWhere(ShortRecord shortRecord);

	/**
     * 批量插入数据 <br>
     * @param shortRecordList 传入参数  <br>
     * @return 符合条件的数据总数
     */
    void batchInsertShortRecord(List<ShortRecord> shortRecordList);
}